home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 11 / Cream of the Crop 11-1.iso / comm / adf_131.zip / ADF.TXT < prev    next >
Text File  |  1996-01-22  |  33KB  |  883 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.                   AnDan Software FOSSIL Version 1.31
  25.  
  26.                   Users Manual
  27.  
  28.                   Scandinavian Digital Systems           AnDan Software FOSSIL Version 1.31                   Users Manual
  29.           ─────────────────────────────────────────────────────────────────
  30.  
  31.  
  32.           Table of contents
  33.  
  34.            1  Overview ...............................................    3
  35.               1.1  Features of ADF ...................................    3
  36.            2  Shareware ..............................................    3
  37.               2.1  Use as shareware ..................................    3
  38.               2.2  How to register ...................................    4
  39.            3  Support and new versions ...............................    5
  40.               3.1  ADF doesn't work ..................................    5
  41.            4  Included files .........................................    5
  42.            5  Installation ...........................................    5
  43.            6  Command line arguments .................................    6
  44.            7  Execution examples .....................................    6
  45.            8  Baud rate calculation ..................................    7
  46.            9  Receiver FIFO trigger level ............................    8
  47.            10 Error messages .........................................    9
  48.            11 Benchmarks .............................................   10
  49.               11.1 Memory consumption ................................   11
  50.               11.2 Execution speed ...................................   11
  51.            12 The ADFComCh program ...................................   12
  52.            13 The ADFDebug program ...................................   12
  53.               13.1 Using ADFDebug ....................................   13
  54.            14 The ADFTerm program ....................................   14
  55.            15 The ADFTest program ....................................   14
  56.            16 Version history ........................................   14
  57.  
  58.  
  59.           Copyright (c) 1994-1996 Scandinavian Digital Systems AB
  60.  
  61.           This product, including the manual and the software, is provided
  62.           as is. Scandinavian Digital Systems AB and Anders Danielsson
  63.           disclaims all warranties of any kind, whether expressed or
  64.           implied, and are not liable to you or anyone else for any damages
  65.           or costs due to the use or inability to use this product.
  66.  
  67.           Acknowledgments:
  68.  
  69.           AnDan Software is a trademark of Scandinavian Digital Systems AB.
  70.           FidoNet is a trademark of Tom Jennings.
  71.           Windows is a trademark of Microsoft Corporation.
  72.           X00 is a program made by Raymond L. Gwinn.
  73.           BNU is a program made by David Nugent, Unique Computing Pty
  74.           Limited.
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.           ─────────────────────────────────────────────────────────────────
  89.           Scandinavian Digital Systems                               Page 2           AnDan Software FOSSIL Version 1.31                   Users Manual
  90.           ─────────────────────────────────────────────────────────────────
  91.  
  92.  
  93.           1  Overview
  94.  
  95.           ADF is a FOSSIL revision level 5 driver, including the additional
  96.           functions defined by Raymond L. Gwinn in X00 v1.50.
  97.  
  98.           ADF is specially designed for users of high speed modems with or
  99.           without the 16550 UART, using DOS or a multitasking environment.
  100.  
  101.           Some communication parameters cannot be set in ADF, they are hard
  102.           coded for best optimization. These hard coded parameters will
  103.           work fine for almost all users of high speed modems (users using
  104.           a locked baud-rate).
  105.  
  106.           By doing this hard coding and by writing the complete ADF program
  107.           in the assembly language, the FOSSIL driver will be fast and
  108.           small.
  109.  
  110.           ADF was initially written some years ago because other FOSSIL
  111.           drivers did not always work properly in protected mode
  112.           multitasking environments, where the UART is emulated.
  113.  
  114.           ADF is designed to work well with both emulated UARTs and real
  115.           UARTs, without any drawbacks.
  116.  
  117.  
  118.           1.1  Features of ADF
  119.  
  120.           * Always a locked baud-rate.
  121.           * Locked baud-rate of any speed (2 bps - 115200 bps).
  122.           * Always 8 databits, no parity, and 1 stop bit (8N1).
  123.           * Always CTS/RTS handshake. Never DSR/DTR or XON/XOFF handshake.
  124.           * One port per ADF (load ADF in different tasks for many ports).
  125.           * COM-port address configurable (0H-FFFFH).
  126.           * COM-port IRQ configurable (0-15).
  127.           * Full support of the 16550 UART.
  128.           * Fills transmit 16550-FIFO buffer with all 16 bytes.
  129.           * Receiver 16550-FIFO configurable (1, 4, 8 or 14 bytes).
  130.           * Only 8088/8086 compatible code used.
  131.  
  132.  
  133.           2  Shareware
  134.  
  135.           The files in this package may be copied and distributed if no fee
  136.           is charged, if no changes are done and as no part of other
  137.           products, in purpose to test and evaluate this product for a
  138.           period of 30 days.
  139.  
  140.  
  141.           2.1  Use as shareware
  142.  
  143.           To use ADF.EXE as shareware, you must first execute the supplied
  144.           REGISTER.EXE and register ADF.EXE as shareware.
  145.  
  146.  
  147.  
  148.  
  149.           ─────────────────────────────────────────────────────────────────
  150.           Scandinavian Digital Systems                               Page 3           AnDan Software FOSSIL Version 1.31                   Users Manual
  151.           ─────────────────────────────────────────────────────────────────
  152.  
  153.  
  154.           Run REGISTER.EXE, specify ADF.EXE as file to register and do not
  155.           enter any user name. ADF.EXE may then be used as shareware.
  156.  
  157.           When ADF.EXE is executed it will display the number of used days
  158.           since it was registered as shareware.
  159.  
  160.  
  161.           2.2  How to register
  162.  
  163.           To register ADF and use it for more than 30 days, you must pay
  164.           60 SEK, DM 15, UKP 5 or an amount equal to the sum of USD 10 in a
  165.           currency of your own choice.
  166.  
  167.           You can either send cash to (print REGISTER.TXT):
  168.  
  169.                   Scandinavian Digital Systems AB
  170.                   Billerudsgatan 20
  171.                   S-661 30  Saffle
  172.                   SWEDEN
  173.  
  174.           or you can deposit the amount to the Swedish postal giro account
  175.           970159-0.
  176.  
  177.           Only if you give your FidoNet or Internet e-mail address as
  178.           sender, you will receive an e-mail receipt of your deposit.
  179.  
  180.           After depositing the fee, send an electronic mail through FidoNet
  181.           to Reg at 2:203/620 or through Internet to reg@andan.edv.se. The
  182.           mail should contain the following lines:
  183.  
  184.                   Prod=ADF
  185.                   User=<Your name and your e-mail address, BBS or location>
  186.  
  187.           You will then recieve an automatic reply with your private
  188.           registration code, to the address you mailed your registration.
  189.  
  190.           When you specify your user registration name after the "User=",
  191.           you should use your name together with some kind of address or
  192.           location information. Examples:
  193.  
  194.                   User=Anders Danielsson, AnDan BBS, 2:203/620
  195.                   User=Charles Smith, cs@someplace.com
  196.                   User=Hans Schultz, Dernauer Str., Hamburg, Germany
  197.  
  198.           You may also phone AnDan BBS at +46-533-13700 and register
  199.           on-line. The on-line registration is similar to the mail
  200.           registration.
  201.  
  202.           E-mail registration replys through FidoNet are routed. Routed
  203.           FidoNet mail may not work on long distances. If you don't want
  204.           routed mail, use the on-line registration.
  205.  
  206.  
  207.  
  208.  
  209.  
  210.           ─────────────────────────────────────────────────────────────────
  211.           Scandinavian Digital Systems                               Page 4           AnDan Software FOSSIL Version 1.31                   Users Manual
  212.           ─────────────────────────────────────────────────────────────────
  213.  
  214.  
  215.           3  Support and new versions
  216.  
  217.           If you have questions, comments or find bugs in the program,
  218.           please send electronic mail to the author, Anders Danielsson at
  219.           FidoNet 2:203/620 or ad@andan.edv.se.
  220.  
  221.           Well documented reports of new bugs and suggestions are honored
  222.           with a free registration.
  223.  
  224.           The latest version can be file requested as ADF from FidoNet
  225.           2:203/620.
  226.  
  227.           You may also phone AnDan BBS at +46-533-13700, where the newest
  228.           versions and other shareware programs from AnDan Software always
  229.           are downloadable for all users.
  230.  
  231.  
  232.           3.1  ADF doesn't work
  233.  
  234.           ADF is of cause tested to work with a lot of programs that uses
  235.           FOSSIL drivers, in many different environments.
  236.  
  237.           The author is convinced that ADF will work together with all well
  238.           behaved programs, and if not, it is our intention to as fast as
  239.           possible make it work.
  240.  
  241.           However, it is our policy not to make memory or time consuming
  242.           changes in ADF only to make it work with bad behaved programs
  243.           that do not use the FOSSIL properly.
  244.  
  245.  
  246.           4  Included files
  247.  
  248.           You should have received the following files:
  249.  
  250.           File name:    Description:
  251.  
  252.           ADF.TXT       This file
  253.           ADF.EXE       The FOSSIL driver
  254.           ADFCOMCH.EXE  Checks COM-ports
  255.           ADFDEBUG.EXE  FOSSIL debugger
  256.           ADFTERM.EXE   Very small and simple communication program
  257.           ADFTEST.EXE   FOSSIL tester
  258.           ADFCOM1.BAT   Example of use of ADF with COM1
  259.           ADFCOM2.BAT   Example of use of ADF with COM2
  260.           FILE_ID.DIZ   File description
  261.           REGISTER.TXT  Registration form
  262.           REGISTER.EXE  Registration program
  263.  
  264.  
  265.           5  Installation
  266.  
  267.  
  268.  
  269.  
  270.  
  271.           ─────────────────────────────────────────────────────────────────
  272.           Scandinavian Digital Systems                               Page 5           AnDan Software FOSSIL Version 1.31                   Users Manual
  273.           ─────────────────────────────────────────────────────────────────
  274.  
  275.  
  276.           Just copy ADF.EXE to a directory included in your PATH.
  277.  
  278.           If you are only running DOS, edit your AUTOEXEC.BAT and insert a
  279.           line that loads ADF.
  280.  
  281.           You may insert (or call) one of the files ADFCOM1.BAT or
  282.           ADFCOM2.BAT for quick and easy editing.
  283.  
  284.           If you are using a protected mode multitasking environment, such
  285.           as Windows, load one copy of ADF in each wanted DOS session using
  286.           different ports. Do not load ADF in AUTOEXEC.BAT. In fact, this
  287.           applies for all FOSSIL drivers, and this is the reason why ADF
  288.           only uses one port per load.
  289.  
  290.  
  291.           6  Command line arguments
  292.  
  293.           When you run ADF without any arguments, it will display the
  294.           following help text (use ADF|MORE for more prompt):
  295.  
  296.           adf port addr irq baud recbuf trabuf trig
  297.  
  298.           port    FOSSIL port number, 0-126, or COM-port, COM1-COM127.
  299.                   Example: 0 or COM1
  300.           addr    Address in hex of COM-port, 0-FFFF. Example: 3F8
  301.           irq     IRQ number of COM-port, 0-15. Example: 4
  302.           baud    Locked baud-rate, 1-115200. Example: 38400
  303.           recbuf  Size of receive buffer, 256-16384. Example: 2048
  304.           trabuf  Size of transmit buffer, 256-16384. Example: 1024
  305.           trig    Receiver FIFO trigger level, 1, 4, 8 or 14. Example: 8
  306.  
  307.           ADF will stay resident when using the above command line.
  308.  
  309.           adf unload
  310.  
  311.           ADF will remove itself from memory when using the above command
  312.           line.
  313.  
  314.           adf watch on|off
  315.  
  316.           ADF will turn carrier watchdog on or off when using the above
  317.           command line.
  318.  
  319.  
  320.           7  Execution examples
  321.  
  322.           Example of loading ADF using COM1 (see ADFCOM1.BAT):
  323.  
  324.           adf COM1 3F8 4 38400 2048 1024 8
  325.  
  326.  
  327.           Example of loading ADF using COM2 (see ADFCOM2.BAT):
  328.  
  329.  
  330.  
  331.  
  332.           ─────────────────────────────────────────────────────────────────
  333.           Scandinavian Digital Systems                               Page 6           AnDan Software FOSSIL Version 1.31                   Users Manual
  334.           ─────────────────────────────────────────────────────────────────
  335.  
  336.  
  337.           adf COM2 2F8 3 38400 2048 1024 8
  338.  
  339.  
  340.           Example of unloading ADF:
  341.  
  342.           adf unload
  343.  
  344.  
  345.           Example of REMOTE.BAT, to execute on DOS-Shell in a BBS:
  346.  
  347.           @echo off
  348.           rem %1 = Baud rate (used to detect local call)
  349.           if not %1@==0@ ctty COM%2
  350.           if not %1@==0@ adf watch on
  351.           command
  352.           adf watch off
  353.           ctty CON
  354.  
  355.           The carrier watchdog will try to reboot the computer after about
  356.           10 seconds from the carrier drops. This may be dangerous,
  357.           especially in a multitasking environment (such as Windows).
  358.  
  359.  
  360.           8  Baud rate calculation
  361.  
  362.           A PC compatible serial port uses the following formula to
  363.           calculate the baud rate:
  364.  
  365.           Baud = 115200 / Divisor
  366.  
  367.           The Divisor is an integer number (whole number), 1 to 65535, used
  368.           to program the serial port (the UART chip). This means that only
  369.           certain baud rates are allowed.
  370.  
  371.           Divisor:        Baud rate:
  372.  
  373.              1            115200 bps
  374.              2             57600 bps
  375.              3             38400 bps
  376.              4             28800 bps
  377.              5             23040 bps
  378.              6             19200 bps
  379.              7             16457 bps
  380.              8             14400 bps
  381.              9             12800 bps
  382.             10             11520 bps
  383.             11             10473 bps
  384.             12              9600 bps
  385.              .               .
  386.              .               .
  387.              X             115200/X
  388.              .               .
  389.              .               .
  390.  
  391.  
  392.  
  393.           ─────────────────────────────────────────────────────────────────
  394.           Scandinavian Digital Systems                               Page 7           AnDan Software FOSSIL Version 1.31                   Users Manual
  395.           ─────────────────────────────────────────────────────────────────
  396.  
  397.  
  398.           When you specify a baud rate on the command line to ADF, ADF
  399.           calculates the Divisor and checks that the baud-rate is valid
  400.           (realizable).
  401.  
  402.           If you for example use 76800 bps as a baud rate to ADF, the
  403.           Divisor will be 115200/76800 = 1.5, but this is not an integer
  404.           (whole number) and cannot be set. ADF will in this case display
  405.           an error message.
  406.  
  407.  
  408.           9  Receiver FIFO trigger level
  409.  
  410.           The last argument to ADF when loading it, is the receiver FIFO
  411.           trigger level. This used by the 16550 UART, if you don't have a
  412.           16550 or compatible, it will have no effect, but must still be
  413.           specified on the command line.
  414.  
  415.           The receiver FIFO trigger level can be set to 1, 4, 8 or 14.
  416.  
  417.           The value is the number of bytes in the receiver FIFO buffer that
  418.           will generate an interrupt from the UART to the CPU.
  419.  
  420.           The receiver FIFO buffer and it's trigger level, is the main
  421.           reason why many people replaces their old 8250 and 16450 UARTs
  422.           with 16550.
  423.  
  424.           If you for example use a baud rate of 38400 bps, there will be a
  425.           new byte received each 260 us (microseconds). With an ordinary
  426.           UART, the CPU must answer to an interrupt from the UART each 260
  427.           us, and read the byte and store it in memory.
  428.  
  429.           If the CPU is unable to answer an interrupt at this rate, or if
  430.           some program has disable interrupts longer than 260 us, received
  431.           bytes will be lost. If you are downloading a file, you will get a
  432.           lot of resends.
  433.  
  434.           The 16550 UART has a 16 byte receiver FIFO buffer (and also a 16
  435.           byte transmitter FIFO) so it can store up to 16 bytes until the
  436.           CPU must read and empty the buffer.
  437.  
  438.           The receiver FIFO trigger level specifies when an interrupt
  439.           should be generated by the UART to the CPU.
  440.  
  441.           If the trigger level is set to 4, the UART will generate an
  442.           interrupt after 4 bytes have been received, but will still fill
  443.           the buffer up to 16 bytes if the CPU doesn't answer the
  444.           interrupt. The rate of interrupts at 38400 bps will be
  445.           4*260 = 1040 us, and the tolerance to no answer from the CPU will
  446.           be (16-4)*260 = 3120 us.
  447.  
  448.           The most common problem with high baud rates, is that programs
  449.           turns of interrupts during too long time. A trigger level of 14
  450.           would in most cases not be a good solution, normally a trigger
  451.           level of 8 is good enough, in some cases you may lower it to 4.
  452.  
  453.  
  454.           ─────────────────────────────────────────────────────────────────
  455.           Scandinavian Digital Systems                               Page 8           AnDan Software FOSSIL Version 1.31                   Users Manual
  456.           ─────────────────────────────────────────────────────────────────
  457.  
  458.  
  459.           You should not choose a lower trigger level then necessary,
  460.           because it would load the CPU without giving any benefits.
  461.  
  462.  
  463.           10 Error messages
  464.  
  465.           When ADF displays an error message, it will wait a moment before
  466.           continuing, so you are able to read the message when ADF is
  467.           executed among other programs in batch files (such as
  468.           AUTOEXEC.BAT).
  469.  
  470.           All error messages with explanations:
  471.  
  472.  
  473.           "Argument error (command line error)."
  474.  
  475.           ADF was unable to understand the command line arguments, please
  476.           see section 6 above. This error message will also be displayed if
  477.           numerical values on the command line are out of range.
  478.  
  479.  
  480.           "DOS v3.1 or newer required."
  481.  
  482.           Your DOS is too old, you need to upgrade to a newer DOS version.
  483.  
  484.  
  485.           "Unable to handle TSRs in this environment."
  486.  
  487.           ADF does a check that it can search and find it self in the DOS
  488.           memory (lower or upper). If this fails it will display this
  489.           message. Try using plain DOS without special memory managers or
  490.           program loaders.
  491.  
  492.  
  493.           "Error when releasing memory."
  494.  
  495.           DOS reports error when freeing memory. This can occur during both
  496.           load and unload of ADF. Probably is the DOS memory allocation
  497.           blocks damaged (by some program).
  498.  
  499.  
  500.           "Invalid (not realizable) baud-rate."
  501.  
  502.           The specified baud-rate cannot be used. Please see section 8
  503.           above.
  504.  
  505.  
  506.           "Not enough memory for buffers."
  507.  
  508.           The memory given to ADF by DOS at load time is not enough to
  509.           satisfy the wanted size of the receive and transmit buffers.
  510.           Decrease the sizes or load ADF in low memory or in a larger high
  511.           memory block.
  512.  
  513.  
  514.  
  515.           ─────────────────────────────────────────────────────────────────
  516.           Scandinavian Digital Systems                               Page 9           AnDan Software FOSSIL Version 1.31                   Users Manual
  517.           ─────────────────────────────────────────────────────────────────
  518.  
  519.  
  520.           "Error when restoring interrupts."
  521.  
  522.           This may occur when unloading ADF. Most common cause is that some
  523.           other programs also are using the same interrupts. Try to unload
  524.           all TSRs in the reverse order of how they where loaded.
  525.  
  526.  
  527.           "ADF already loaded."
  528.  
  529.           This message will be displayed if you try to load ADF a second
  530.           time.
  531.  
  532.  
  533.           "ADF not loaded."
  534.  
  535.           This message will be displayd if you use some of the ADF command
  536.           lines that requires ADF to be loaded as a TSR first (e.g. unload
  537.           and watch).
  538.  
  539.  
  540.           "Please run "REGISTER" first to use this program."
  541.  
  542.           You must run REGISTER.EXE to use ADF.EXE, see section 2 above. If
  543.           you get a new version of ADF.EXE you need to run REGISTER.EXE
  544.           once again.
  545.  
  546.  
  547.           "You have used this program for more than 30 days. If you want to
  548.           use it more, you must register it. Please wait a moment."
  549.  
  550.           Please read section 2 above. ADF will wait a moment when
  551.           displaying this message, you cannot terminate this waiting.
  552.  
  553.  
  554.           11 Benchmarks
  555.  
  556.           Users have asked how much memory ADF will consume and how fast it
  557.           is compared with other well known FOSSIL drivers.
  558.  
  559.           Below are tables of memory consumption and execution speed.
  560.  
  561.           X00 v1.50 and BNU v1.70 have been used as references.
  562.  
  563.           The drivers where loaded using the following command lines:
  564.  
  565.           adf 0 3F8 4 38400 2048 1024 8
  566.           x00 E 0=3F8,IRQ4 B,0,38400 R=2048 T=1024
  567.           bnu /T1024 /R2048 /P1 /L0:38400,8N1
  568.  
  569.           Please note that ADF has not been written with any special
  570.           efforts to make it small and fast. These benchmarks are only
  571.           included here to show that ADF is as good as any other FOSSIL
  572.           driver written in the assembly language.
  573.  
  574.  
  575.  
  576.           ─────────────────────────────────────────────────────────────────
  577.           Scandinavian Digital Systems                              Page 10           AnDan Software FOSSIL Version 1.31                   Users Manual
  578.           ─────────────────────────────────────────────────────────────────
  579.  
  580.  
  581.           11.1 Memory consumption
  582.  
  583.           How much memory ADF (and other FOSSILs) will use depends on how
  584.           large receive and transmit buffers are being used.
  585.  
  586.           The memory consumption was determined using the DOS command
  587.           MEM /d.
  588.  
  589.           Program:        Bytes used:
  590.  
  591.           ADF.EXE          6304 bytes
  592.           X00.SYS          9808 bytes
  593.           X00.EXE         10288 bytes + environment size
  594.           BNU.SYS          8272 bytes
  595.           BNU.EXE          8304 bytes + environment size
  596.  
  597.           Probably due to ADF uses only locked baud and always one port, it
  598.           is somewhat smaller than the others.
  599.  
  600.  
  601.           11.2 Execution speed
  602.  
  603.           The execution speed has been measured using ADFDebug and ADFTest
  604.           (see below). ADFTest was executed 8 times per FOSSIL, and the
  605.           most common value was used.
  606.  
  607.           The computer used was a 486DX-50 with no significant TSRs. The
  608.           internal cache (8 KB) and the external cache were both disabled.
  609.  
  610.           Each time value has the unit 0.838095 us (microseconds).
  611.  
  612.  
  613.           FOSSIL function:                       ADF:   X00:   BNU:
  614.  
  615.           00 Set communications parameters        82    135    119
  616.           01 Transmit character and wait          83    195    132
  617.           02 Get received character with wait     60     80     56
  618.           03 Return serial port status            65     82     53
  619.           04 Activate port                       108    586  35930
  620.           05 Deactivate port                      64    275    237
  621.           06 Raise/lower DTR                      43     61     66
  622.           07 Return timer tick information        32     38     39
  623.           08 Flush output buffer                  42     78     46
  624.           09 Purge output buffer                  41     65     48
  625.           0A Purge input buffer                   41     77     53
  626.           0B Transmit no wait                     62    106     75
  627.           0C Non-destructive read-ahead           52     63     53
  628.           0F Flow control for serial I/O          44     65     47
  629.           18 Block Read                           82    210     69
  630.           19 Block Write                         132    257     87
  631.  
  632.           These values should be compared with care. All three FOSSIL
  633.           drivers have about the same execution speed. Only large
  634.           differences (50% or more) are to be considered.
  635.  
  636.  
  637.           ─────────────────────────────────────────────────────────────────
  638.           Scandinavian Digital Systems                              Page 11           AnDan Software FOSSIL Version 1.31                   Users Manual
  639.           ─────────────────────────────────────────────────────────────────
  640.  
  641.  
  642.           Due to difference in implementation, some function takes much
  643.           longer time, for example, BNU writes to the screen during
  644.           function 01 Activate port.
  645.  
  646.           One thing to remember is that ADF actually does more job for all
  647.           read and write (transmit) functions, due to safer operation with
  648.           protected mode multitaskers using emulated UARTs. As you can see,
  649.           this has been achieved without any significant time losses.
  650.  
  651.           Note that no execution speed of the interrupt services routine
  652.           has been measured. One simple way
  653.  
  654.  
  655.           12 The ADFComCh program
  656.  
  657.           When you run ADFComCh without any arguments, it will display the
  658.           following help text:
  659.  
  660.           adfcomch addr
  661.  
  662.           addr    Address in hex of COM port, 0-FFFF. Example: 3F8
  663.  
  664.           ADFComCh checks if there is an UART at the specified port
  665.           address. The most common port addresses are:
  666.  
  667.               COM1    3F8
  668.               COM2    2F8
  669.               COM3    3E8
  670.               COM4    2E8
  671.  
  672.           If the UART is a 16550, ADFComCh will enable the FIFO and change
  673.           the trigger level.
  674.  
  675.  
  676.           13 The ADFDebug program
  677.  
  678.           When you run ADFDebug without any arguments, it will display the
  679.           following help text:
  680.  
  681.           adfdebug command
  682.  
  683.           'command' is one of the following commands:
  684.  
  685.           L [opt] Load TSR, should be done after the FOSSIL load. Options:
  686.                   /t    Use time measurement.
  687.                   /sNN  Use ASCII NN as separator, default is 13 and 10 (CR
  688.                   and LF).
  689.           U       Unload TSR, should be done before the FOSSIL unload.
  690.           N       No output (default at load time).
  691.           S       Screen output.
  692.           F file  File output to the specified file.
  693.  
  694.  
  695.  
  696.  
  697.  
  698.           ─────────────────────────────────────────────────────────────────
  699.           Scandinavian Digital Systems                              Page 12           AnDan Software FOSSIL Version 1.31                   Users Manual
  700.           ─────────────────────────────────────────────────────────────────
  701.  
  702.  
  703.           13.1 Using ADFDebug
  704.  
  705.           ADFDebug is a FOSSIL debugger. It is loaded as a TSR after the
  706.           FOSSIL has been loaded, and may write debug (trace) information
  707.           to the screen or to a file.
  708.  
  709.           It is included for application programmers, and for advanced
  710.           users.
  711.  
  712.           ADFDebug is loaded using the command L with or without the
  713.           options /t or /s. If /t is used, it will do time measurements of
  714.           the FOSSIL driver functions using timer ticks with the unit
  715.           0.838095 us (microseconds). The time will always include a small
  716.           offset error, independent of the FOSSIL driver used. Execution
  717.           time of interrupts that occurs during FOSSIL execution will be
  718.           included in the time measurement.
  719.  
  720.           When loading with the option /t, ADFDebug may cause the internal
  721.           DOS clock (BIOS Timer Tick) to be incorrectly updated. Do only
  722.           use /t in plain DOS without any timer depending TSRs, including
  723.           hard disk caches (e.g. smartdrv), and reboot when done with
  724.           testing. During testing, do not hold down keys or move the mouse.
  725.  
  726.           After loading ADFDebug, the command S or F is used to start debug
  727.           output, and the command N is used to stop the output.
  728.  
  729.           When using the command F, you must also specify a file name. The
  730.           file is opened, written to and closed at each FOSSIL call, so
  731.           most programs using the FOSSIL will run very slow. The file may
  732.           also get very large.
  733.  
  734.           ADFDebug uses DOS to write to the file, which may cause a system
  735.           crash when the FOSSIL is used by some programs (programs that
  736.           calls the FOSSIL from interrupt routines).
  737.  
  738.           For testing purposes the program ADFTest (see below) is included.
  739.           It calls a lot of FOSSIL functions, and the calls are done
  740.           immediate after a BIOS Timer Tick count, to minimize time
  741.           measurement errors.
  742.  
  743.           Example of usage of ADFDebug and ADFTest:
  744.  
  745.           @echo off
  746.           del adf.lst
  747.           adf COM1 3F8 4 38400 2048 1024 8
  748.           adfdebug L /t /s9
  749.           adfdebug F adf.lst
  750.           adftest COM1
  751.           adfdebug U
  752.           adf unload
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.           ─────────────────────────────────────────────────────────────────
  760.           Scandinavian Digital Systems                              Page 13           AnDan Software FOSSIL Version 1.31                   Users Manual
  761.           ─────────────────────────────────────────────────────────────────
  762.  
  763.  
  764.           14 The ADFTerm program
  765.  
  766.           When you run ADFTerm without any arguments, it will display the
  767.           following help text:
  768.  
  769.           adfterm port
  770.  
  771.           port    FOSSIL port number, 0-126, or COM-port, COM1-COM127.
  772.                   Example: 0 or COM1
  773.  
  774.           ADFTerm is a very small and simple communication program, that
  775.           uses the ADF or any FOSSIL driver. It will set 2400 bps and 8N1
  776.           if FOSSIL is not locked.
  777.  
  778.           You may call BBSes and use ANSI-BBS if you have ANSI.SYS loaded.
  779.  
  780.  
  781.           15 The ADFTest program
  782.  
  783.           When you run ADFTest without any arguments, it will display the
  784.           following help text:
  785.  
  786.           adftest port
  787.  
  788.           port    FOSSIL port number, 0-126, or COM-port, COM1-COM127.
  789.                   Example: 0 or COM1
  790.  
  791.           ADFTest is a FOSSIL test program.
  792.  
  793.           ADFTest will send "AT<cr>" to the port and expect at least one
  794.           character as reply. A modem connected to the port will in most
  795.           cases do the job.
  796.  
  797.           ADFTest is intended to be used with ADFDebug for testing and
  798.           verifying FOSSIL drivers.
  799.  
  800.  
  801.           16 Version history
  802.  
  803.           v1.10 November 22, 1995
  804.  
  805.           This is the first non-BETA version. The setting of the receiver
  806.           FIFO trigger level on the command line has been added since the
  807.           v1.00 BETAs from 1994.
  808.  
  809.  
  810.           v1.20 December 9, 1995
  811.  
  812.           Many improvements and bug fixes has been done. ADF now includes
  813.           all FOSSIL functions 01H to 21H as X00 v1.50 does. It also
  814.           includes function 7EH and 7FH for "external application". ADF
  815.           will now display an error message if the baud-rate is not
  816.           realizable. Some more utility programs have been included, the
  817.           debug function has been moved into a separate program (option /d
  818.  
  819.  
  820.           ─────────────────────────────────────────────────────────────────
  821.           Scandinavian Digital Systems                              Page 14           AnDan Software FOSSIL Version 1.31                   Users Manual
  822.           ─────────────────────────────────────────────────────────────────
  823.  
  824.  
  825.           is no longer valid).
  826.  
  827.  
  828.           v1.30 January 20, 1996
  829.  
  830.           Bugfix of External Application. Added output of flag register in
  831.           ADFDebug. Bugfix of function 1E "Extended line control
  832.           initialization". Bugfix of function 04, 05, 1C, 14 when used on
  833.           illegal port number. Only check DL for port number (due to bugs
  834.           in other programs), valid port range is now 0-126. COM-port
  835.           number may be used instead of FOSSIL port number.
  836.  
  837.  
  838.           v1.31 January 22, 1996
  839.  
  840.           The time limit of 30 days after installation has been removed.
  841.           ADF will not stop executing after 30 days as before, it will run
  842.           for ever, even if it is never registered.
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.  
  877.  
  878.  
  879.  
  880.  
  881.           ─────────────────────────────────────────────────────────────────
  882.           Scandinavian Digital Systems                              Page 15
  883.